package desgin.pattern.behavior.templatemethod;

/**
 * <b>基本方法</b> <br/>　基本方法又可以分为三种：抽象方法(Abstract Method)、具体方法(Concrete Method)和钩子方法(Hook
 * Method)。
 * 
 * 　　●　　抽象方法：一个抽象方法由抽象类声明，由具体子类实现。在Java语言里抽象方法以abstract关键字标示。
 * 　　●　　具体方法：一个具体方法由抽象类声明并实现，而子类并不实现或置换。
 * 　　●　　钩子方法：一个钩子方法由抽象类声明并实现，而子类会加以扩展。通常抽象类给出的实现是一个空实现，作为方法的默认实现。<br/>
 * 
 * <b>场景:</b><br/>
 * 模板方法模式在Servlet中的应用
 * 　　使用过Servlet的人都清楚，除了要在web.xml做相应的配置外，还需继承一个叫HttpServlet的抽象类
 * 。HttpService类提供了一个service
 * ()方法，这个方法调用七个do方法中的一个或几个，完成对客户端调用的响应。这些do方法需要由HttpServlet的具体子类提供
 * ，因此这是典型的模板方法模式。下面是service()方法的源代码：
 * 
 * @author shuai.zuo
 * @date 2015年3月10日
 */
public class Main {

	public static void main(String[] args) {
		AbstractTemplate template = new ConcreteTemplate();
		template.runTask();
	}
}
